<?php

/**
 * Description of Pegawai
 *
 * @author DENY PRASETIA TW
 * http://denyprasetiatw.blogspot.com/
 * Created Feb 9, 2012 - 6:16:33 PM
 */
class Pegawai extends CI_Model {

/*==============================================================*/
/* DESKRIPSI HAK AKSES
 * Hakakses 1 : Tata Usaha
 * Hakakses 2 : Kepalai Balai
 * Hakakses 3 : Pegawai*/
/*==============================================================*/
    
    private $namaTabel = 'T_PEGAWAI';
    private $query;
    private $data  = array('IDPEGAWAI', 'NAMAPEGAWAI', 'PASSWORD', 'HAKAKSES', 'STATUSPEGAWAI');

    public function __construct() {
        parent::__construct();
    }
        
/*==============================================================*/
/* FUNCTION UNTUK MENANGANI REGISTRASI PEGAWAI + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI*/
/*==============================================================*/
    public function registrasiPegawai($input) {
        $this->db->trans_begin();
            $this->query = array(
                'IDPEGAWAI'     => $input['idpegawai'],
                'NAMAPEGAWAI'   => $input['namapegawai'],
                'PASSWORD'      => $input['password'],
                'HAKAKSES'      => $input['hakakses'],
                'STATUSPEGAWAI' => '1'
            );
            $this->db->insert($this->namaTabel,  $this->query);
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
        }
    }

/*==============================================================*/
/* FUNCTION UNTUK MENANGANI EDIT DATA PEGAWAI + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI*/
/*==============================================================*/
    public function editDataPegawai($input) {
        $this->db->trans_begin();
            $this->query = array(
                'NAMAPEGAWAI'   => $input['namapegawai'],
                'PASSWORD'      => $input['password'],
                'HAKAKSES'      => $input['hakakses'],
                'STATUSPEGAWAI' => $input['statuspegawai']
            );
            $this->db->where('IDPEGAWAI', $input['idpegawai']);
            $this->db->set($this->query);
            $this->db->update($this->namaTabel);
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
        }
    }
    
/*==============================================================*/
/* FUNCTION UNTUK MENAMPILKAN SELURUH DATA PEGAWAI + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI*/
/*==============================================================*/
    public function lihatDaftarPegawai() {
        $this->db->trans_begin();
            $this->db->select($this->data);
                $this->db->from($this->namaTabel);
                //$this->db->where('STATUSPEGAWAI', '1');
                //$this->db->limit(10);
                $this->db->order_by('NAMAPEGAWAI','ASC');
            $this->query = $this->db->get();
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
            return $this->query->result();
//            foreach($this->query->result() as $row){
//                echo $row->IDPEGAWAI;
//                echo $row->NAMAPEGAWAI;
//                echo $row->PASSWORD;
//                echo $row->HAKAKSES;
//                echo $row->STATUSPEGAWAI;
//                echo "</br>";
//            }
        }
    }
    
/*==============================================================*/
/* FUNCTION UNTUK MELIHAT DETAIL IDENTITAS PEGAWA + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI*/
/*==============================================================*/
    public function lihatDetailPegawai($input) {
        $this->db->trans_begin();
            $this->db->select($this->data);
                $this->db->from($this->namaTabel);
                //$this->db->where('STATUSPEGAWAI', '1');
                $this->db->where('IDPEGAWAI', $input['idpegawai']);
            $this->query = $this->db->get();
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
            return $this->query->result();
//            foreach($this->query->result() as $row){
//                echo $row->IDPEGAWAI;
//                echo $row->NAMAPEGAWAI;
//                echo $row->PASSWORD;
//                echo $row->HAKAKSES;
//                echo $row->STATUSPEGAWAI;
//                echo "</br>";
            //}
        }
    }
    
/*==============================================================*/
/* FUNCTION UNTUK MENCARI DATA PEGAWAI + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI*/
/*==============================================================*/
    public function cariDataPegawai($input) {
        $this->db->trans_begin();
        $this->db->select($this->data);
            $this->db->from($this->namaTabel);
            //$this->db->where('STATUSPEGAWAI', '1');
            $this->db->like('NAMAPEGAWAI', $input['namaPegawai']);
            //$this->db->limit(10);
            $this->query = $this->db->get();
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
            return $this->query->result();
//            foreach($this->query->result() as $row){
//                echo $row->IDPEGAWAI;
//                echo $row->NAMAPEGAWAI;
//                echo $row->PASSWORD;
//                echo $row->HAKAKSES;
//                echo $row->STATUSPEGAWAI;
//                echo "</br>";
//            }
        }
    }
    
/*==============================================================*/
/* FUNCTION UNTUK LOGIN PEGAWAI + OK
 * IDPEGAWAI, NAMAPEGAWAI, PASSWORD, HAKAKSES, STATUSPEGAWAI    */
/*==============================================================*/
    public function logIn($input) {
        $this->db->trans_begin();
            $this->db->where('IDPEGAWAI', $input['idpegawai']);
            $this->db->where('PASSWORD',  $input['password']);
            $this->db->where('STATUSPEGAWAI', '1');
            $this->query = $this->db->get($this->namaTabel);
        $this->db->trans_complete();
        if ($this->db->trans_status() === FALSE) {
            $this->db->trans_rollback();
        }else {
            $this->db->trans_commit();
            return $this->query->result_array();
        }
    }
    
/*==============================================================*/
/* FUNCTION UNTUK MENANGANI LOGOUT USER + OK
 * IDPEGAWAI, NAMAPEGAWAI, HAKAKSES                             */
/*==============================================================*/
    public function logOut() {
        $this->session->unset_userdata('s_idpegawai');
        $this->session->unset_userdata('s_namapegawai');
        $this->session->unset_userdata('s_password');
        $this->session->unset_userdata('s_hakakses');
        $this->session->unset_userdata('s_status');
        redirect();
    }
    
}

?>
